home *** CD-ROM | disk | FTP | other *** search
/ Meeting Pearls 1 / Meeting Pearls Vol 1 (1994).iso / installed_progs / text / faqs / databases.free-databases < prev    next >
Encoding:
Internet Message Format  |  1994-05-04  |  58.3 KB

  1. Subject: Catalog of free database systems
  2. Newsgroups: comp.databases,comp.databases.object,comp.os.386bsd.apps,comp.sources.d,comp.answers,news.answers
  3. From: muir@idiom.berkeley.ca.us (David Muir Sharnoff)
  4. Date: 3 May 1994 02:56:46 -0700
  5.  
  6. Archive-name: databases/free-databases
  7. Last-modified: 1994/05/03
  8. Version: 1.8
  9.  
  10.  
  11.     Catalog of Free Database Systems
  12.  
  13. This document attemts to catalog databases that are 
  14. available without payment and with source.  
  15.  
  16. The latest version of the document can be ftp'ed: get
  17. pub/free-databases from idiom.berkeley.ca.us.
  18.  
  19. I will post this document about once a month to comp.databases,
  20. comp.databases.object, comp.answers, and news.answers.  I will 
  21. also post it to other groups somewhat randomly.
  22.  
  23. Please send additions, corrections, and donations to 
  24. David Muir Sharnoff <free-databases@idiom.berkeley.ca.us>
  25.  
  26.  
  27. I would like user testimonials.  I want to know which databases
  28. are usable and which are trustable!  Is there any database on
  29. this list that I could store payroll records on?
  30.  
  31. Thanks,
  32.  
  33. -Dave
  34. Idiom Consulting, Berkeley, CA
  35.  
  36.  
  37. Copyright (C) 1993,1994 David Muir Sharnoff, All rights reserved.
  38.  
  39. ---------------------------------------------------------------------------
  40. Prototype entry:
  41.  
  42. name:        The name of the package
  43. version:    The current version number of the package
  44.         direct inquiries to "contact."
  45. interface from: (interfaces only) front end protocol/program/language
  46. interface to:    (interfaces only) back end protocol/program/server/etc.
  47. interfaces:    The external interfaces that are supported by
  48.         the package.  Common interfaces are: SQL, ESQL,
  49.         dbm, etc.
  50. access methods:    A list of the access methods that are supported
  51. multiuser:    Can more than one person access the package at
  52.         the same time.  
  53. transactions:    Does the package support transactions?
  54. distributed:    Does the package support distributed databases?
  55. query language:    What query languages does the package support
  56.         if any?  SQL, QUEL, etc.
  57. index size:    (full text only) the size of the index as a percentage
  58.         of the size of the text to be indexed.
  59. limits:        Any known, annoying limits
  60. robustness:    Can this package be used on mission-critical data?  Is the
  61.         package bug free?  Does it crash?  If it supports multi-user
  62.         transactions, does it make guarentees and keep them?
  63. description:    A description of the package.
  64. references:    Pointers to other documentation
  65. status:        current developement status (supported, actively developed, etc)
  66. announcements:    Where to get announcements
  67. discussion:    Where to send, or how to join discussions about
  68.         the package
  69. bugs:        Where to send bug reports
  70. requires:    Special requirements for installing or running
  71. ports:        What does the package run on?
  72. restrictions:    Special copyright or other restrictions on the software
  73. author:        The primary author, if known.  If not known, 
  74. contact:    The current contact point.  If not specified, 
  75.         use "author."
  76. how to get:    Instructions for obtaining the package
  77. updated:    When the package was last updated (yyyy/mm/dd)  [often
  78.         incorrect]
  79. ---------------------------------------------------------------------------
  80. Selected changes:
  81.  
  82.     new listings: 
  83.         IDBM (ISAM Database Manager)
  84.         ctreeperl
  85.     updates:
  86.         Exodus storage manager (SM) 3.1 and GNU E 2.5.8 is in beta.
  87.         Postgres 4.2 is probably out (ftp server limits users)
  88.         Ingperl 2.0 (formerly Sqlperl)
  89.         Oratcl 2.11
  90.         Sybtcl 2.11
  91.  
  92. ---------------------------------------------------------------------------
  93. --------------------------- relational databases --------------------------
  94. ---------------------------------------------------------------------------
  95.  
  96. name:        DiamondBase
  97. version:    0.2
  98. interfaces:    C++ library
  99. access methods:    b+ tree
  100. multiuser:    Alpha in this version
  101. transactions:    no
  102. distributed:    no
  103. query language:    C++ methods
  104. limits:        limits are set at compile time.  The default max records 
  105.         is 21474836.
  106. robustness:    The database engine is quite stable. The multi-user extensions
  107.         are a recent addition and are still considered to be an alpha
  108.         version. The single user version is separate however and
  109.         unaffected.
  110. description:    DiamondBase is written entirely in C++, and uses a schema
  111.         compiler to generate C++ class defintions for the objects, as
  112.         well as some comparison code which is also linked in to the
  113.         final executable. Facilities are now available to access
  114.         generic relations without providing comparison code. It was
  115.         written originally as a replacement for MetalBase which was too
  116.         slow.  DiamondBase is very fast.
  117. announcements:    send mail to Darren Platt to be put on their list
  118. questions:    send mail to Darren Platt
  119. bugs:        send mail to Darren Platt
  120. requires:    C++
  121. ports:        many Unix platforms and OS/2 under cfront or gcc or 
  122.         Borland's compiler.
  123. restrictions:    Free usage for non-commerical applications -- negotiate
  124.         anything else.
  125. author:        Kevin Lentin, Andrew Davison, Darren Platt
  126. contact:    Darren Platt <darrenp@dibbler.cs.monash.edu.au>
  127. how to get:    ftp pub/export/? from pippin.cs.monash.edu.au
  128. updated:    1993/11/06
  129.  
  130. name:        University INGRES
  131. version:    8.9
  132. interfaces:    QUEL, EQUEL
  133. access methods:    heap, hash, isam, ordered
  134. multiuser:    yes
  135. transactions:    yes, but no multistatement transactions.  Each statement
  136.         is ACID
  137. distributed:    no
  138. query language:    QUEL
  139. limits:        ?
  140. robustness:    Very mature technology
  141. description:    This is the database program that was the basis for INGRES
  142.         Corporation.  Obviously, it does not have all the bells 
  143.         and whistles of the current commercial product.  However,
  144.         it is small and fast and it works.
  145.         So called ordered relations are slow and not locked.
  146. references:    "The INGRES Papers" Stonebraker ed. Addison Wesley
  147. ports:        SunOS, ?
  148. author:        The Ingres project at UC Berkeley.  
  149. contact:    <ingres@postgres.berekely.edu>
  150. how to get:    ftp pub/ingres/ingres89.tar.Z from s2k-ftp.CS.Berkeley.EDU
  151.         _and_ ftp pub/source/ingres.patch from idiom.berkeley.ca.us
  152.     linux:    ftp pub/linux/packages/ingres from tsx-11.mit.edu
  153. updated:    1993/05/20
  154.  
  155. name:        MetalBase
  156. version:    5.0
  157. interfaces:    custome C library
  158. access methods:    AVL-trees
  159. multiuser:    yes, but in theory race conditions still exist
  160. transactions:    yes
  161. distributed:    no
  162. query language:    "Report", and "View Relation" a curses based viewer
  163. limits:        ?
  164. robustness:    data corruption is possible when MetalBase is not shut 
  165.         down correctly
  166. description:    MetalBase is a small relational database.  It has all the
  167.         pieces that a relational database should C interface, curses
  168.         interface, report writer, etc.  It does not have design which
  169.         takes advantage of shared memory or the better access methods.
  170.         None of the interfaces are standard, but all of them are easy
  171.         to use.
  172. discussion:    mbase-request@internode.com.au
  173. requires:    curses
  174. ports:        Linux, MS-DOS, Amiga, NeXT, Coherent, Macintosh MPW, SGI, Xenix
  175. restrictions:    donations are suggested
  176. author:        Richid Jernigan / PO Box 827 / Norris TN 37828
  177. how to get:    ftp systems/unix/linux/sources/usr.bin/mbase.tar.z 
  178.         from ftp.uu.net
  179. updated:    1992/10/01
  180.  
  181. name:        Postgres
  182. version:    4.2
  183. interfaces:    libpq (C interface), pgbrowse (tk-based browser)
  184. access methods:    Heap plus secondary indexes: B-tree, R-tree, Hash.
  185. multiuser:    yes
  186. transactions:    yes
  187. distributed:    no
  188. query language:    Postquel (incompatable, extended variant of QUEL)
  189. limits:        ?
  190. robustness:    The authors say: "It is not up to commercial levels of 
  191.         reliability.  I would not want _my_ payroll records in it :-)"
  192. description:    Postgres is a database research project under Prof. Michael
  193.         Stonebraker at U. C. Berkeley.  To facilitate research
  194.         efforts, a software test-bed was created; this is the
  195.         "Postgres" DBMS software.  The Postgres DBMS is extended
  196.         relational or object oriented, depending on the buzzword du
  197.         jour.  Postgres is relational.  It is highly extensible.  It
  198.         has object oriented features like inheritance.  it has query
  199.         language procedures, rules, updatable views, and more.
  200. references:    There are may papers available, both through ftp and as
  201.         hard-copy technical reports.  Cruse the ftp site for papers
  202.         or mail Michelle Mattera <michelle@postgres.berkeley.edu>
  203. discussion:    send "Subject: ADD" to postgres-request@postgres.berkeley.edu
  204.     linux:    send "X-Mn-Admin: join postgres" 
  205.         to linux-activists-request@niksula.hut.fi
  206. bugs:        <bug-postgres@postgres.berkeley.edu>
  207. ports:        full support: Alpha OSF/1 1.3+, Mips Ultrix .2+, 
  208.             Sparc SunOS 4.1.1+, Power AIX 3.2.3+, HP-PA HP-UX 9.0+
  209.         comming soon: Sparc Solaris 2.3, i386 Linux
  210.         previous versions: i386 SVR4, i386 386BSD, i386 Linux, 
  211.             i386 NextStep 3.1, NeXT NextStep 3.0, 
  212.             Sparc Solaris 2.1+, HP-PA HP-UX 8.07
  213. contact:    developers: <postgres-questions@postgres>
  214.         admin: Michelle Mattera <michelle@postgres.berkeley.edu>
  215. how to get:    ftp pub/postgres/postgres-v4r2/* from s2k-ftp.CS.Berkeley.EDU.
  216. updated:    1994/04/??
  217.  
  218. name:        REQUIEM
  219. version:    ?
  220. interfaces:    RQL, ERQL (extension)
  221. access methods:    B-tree indexes can be created on attributes of base relations.
  222. multiuser:    yes (multiuser extension)
  223. transactions:    yes (multiuser extension)
  224. distributed:    no
  225. query language:    RQL
  226. robustness:    [seems to maintained by zero to few people --ed]
  227. description:    REQUIEM (RElational Query and Update Interactive systEM) is 
  228.         an extensible, relational DBMS developed in C with a query 
  229.         language based on the relational algebra called RQL (Relational
  230.         Query Language).
  231.         There appears to be three versions of REQUIEM: the base
  232.         version and two extensions.  One extension adds multiuser
  233.         capability.  The other adds an embeddable version of the
  234.         query langauge.
  235. references:    "An Extensible DBMS for Small-Medium Scale Systems",
  236.         Papazoglou, M.P., IEEE Micro, April 1989.
  237.         Relational Database Management - A Systems Programming 
  238.         Approach, Papazoglou, M.P. and Valder, W., Prentice Hall 
  239.         International, UK, 1989.
  240.                 "The Development of a Program Interface for the RDBMS Requiem"
  241.                 Power, R.A., 1991 Honours Thesis (dvi file available with 
  242.                 source code for the embedded version).
  243. ports:        Sparc/SunOS; base version only: MS-DOS, Macintosh
  244. contact:    (embedded version only) 
  245.         Robert Power <robert.power@csis.dit.csiro.au>
  246. how to get:    ftp pub/requiem/REQUIEM.tar.Z (multiuser version) or
  247.         pub/requiem/Requiem.tar.Z (embeddable version) 
  248.         from dcssoft.anu.edu.au 
  249.         The base version can be constructed from the multiuser version.
  250. updated:    1992/10/06
  251.  
  252. name:        shql
  253. version:    1.2
  254. interfaces:    SQL, shell
  255. multiuser:    no
  256. transactions:    no ?
  257. distributed:    no
  258. limits:        no NULLs in the data, spaces and backslashes may be added when 
  259.         the data contains punctuation, GROUP BY is not implemented.
  260. robustness:    it is a shell script.
  261. description:    Shql is a program that reads SQL commands interactively and
  262.         executes those commands by creating and manipulating Unix
  263.         files.  The program is patterned after Ingres' interactive sql
  264.         terminal monitor program.
  265. requires:    bourne shell with functions, awk, grep, cut, sort, uniq, join,
  266.         wc, and sed
  267. author:        Bruce Momjian <root%candle.uucp@bts.com>
  268. how to get:    comp.sources.misc volumes 34 and 41.
  269. updated:    1994/03/06
  270.  
  271. ---------------------------------------------------------------------------
  272. --------------------------- object oriented -------------------------------
  273. ---------------------------------------------------------------------------
  274.  
  275. name:        Arjuna Distributed Programming System
  276. version:    2.0
  277. interfaces:    C++
  278. access methods:    ?
  279. multiuser:    yes
  280. transactions:    yes, nested
  281. distributed:    yes, includes replicated objects
  282. query language:    ?
  283. limits:        ?
  284. robustness:    "all reported bugs fixed"
  285. description:    Arjuna is a programming system for reliable distributed
  286.         computing. Arjuna supports nested atomic actions for
  287.         controlling operations on objects (instances of C++ classes),
  288.         which can potentially be persistent. The software available
  289.         includes a C++ stub generator which hides much of the details
  290.         of client-server based programming, plus a system programmer's
  291.         manual containing details of how to install Arjuna and use it
  292.         to build fault-tolerant distributed applications.
  293. discussion:    send "join arjuna YOUR-NAME-HERE" to mailbase@mailbase.ac.uk
  294. ports:        UNIX: Suns, HPs, etc.
  295. restrictions:    A commercial extension exists.
  296. contact:    arjuna@newcastle.ac.uk
  297. how to get:    ftp ? from arjuna.ncl.ac.uk
  298. updated:    1993/05/15
  299.  
  300. name:        EXODUS Project software
  301. version:    GNU E 2.3.3, Storage Manager (SM) 3.1
  302. interfaces:    GNU E, (C++ for direct access to the Storage Manager)
  303. access methods:    B+tree and linear-hashing based indexes
  304. multiuser:    yes, client-server
  305. transactions:    yes, but not nested.
  306. distributed:    yes, applications can access multiple servers in a single
  307.         transaction.  Distributed commits are performed across servers
  308.         and clients have access to an interface allowing participation
  309.         in distributed commits managed by an external agent.
  310. query language:    GNU E -- a persistent programming language based on C++
  311. robustness:    High (at least for academic software).
  312.                 The SM release includes a facility for regression
  313.         testing most features, including crash recovery.
  314. description:    The EXODUS Storage Manager (SM) is a client-server object
  315.         storage system which provides "storage objects" for storing
  316.         data, versions of objects, "files" for grouping related storage
  317.         objects, and indexes for supporting efficient object access.  A
  318.         storage object is an uninterpreted container of bytes which can
  319.         range in size from a few bytes to hundreds of megabytes.  The
  320.         Storage Manager provides routines to read, overwrite, and
  321.         efficiently grow and shrink objects.  In addition, the Storage
  322.         Manager provides transactions, lock-based concurrency control,
  323.         and log-based recovery.
  324.         GNU E is a persistent, object oriented programming language
  325.         developed as part of the Exodus project.  GNU E extends C++
  326.         with the notion of persistent data, program level data objects
  327.         that can be transparently used across multiple executions of a
  328.         program, or multiple programs, without explicit input and
  329.         output operations.
  330. references:    A bibliography of EXODUS related papers can be obtained from
  331.         the ftp site described below.  Some of the papers are available
  332.         from the ftp server as technical reports, and are marked as
  333.         such in the bibliography.
  334. status:        No longer being developed.  However, the authors are working
  335.         on a new system, SHORE, and will support current Exodus 
  336.         users well enough to keep them going until SHORE is useable.
  337.         GNU E 2.5.8 is in beta and can be ftped.
  338. discussion:    Send "information exodus_all" to listproc@cs.wisc.edu to
  339.         find out how to join the exodus_all mailing list.
  340. bugs:           exodusbugs@cs.wisc.edu
  341. requires:    g++ 2.3.3 (exactly 2.3.3.  GNU E 2.5.8 is in beta)
  342. ports:        MIPS/Ultrix, SPARC/SunOS, HP 7xx/HP-UX
  343. restrictions:    none, but see copyright notice located in all source files 
  344. author:        The EXODUS Database Toolkit project at the 
  345.         University of Wisconsin
  346. contact:    exodus@cs.wisc.edu
  347. how to get:    ftp exodus/* from ftp.cs.wisc.edu
  348. updated:    1993/03/29
  349.  
  350. name:        LINCKS (Linkoping Intelligent Communication of Knowledge System)
  351. version:    2.1
  352. interfaces:    emacs-like editor, ?
  353. access methods:    ?
  354. multiuser:    yes
  355. transactions:    ?
  356. distributed:    ?
  357. query language:    hypertext-ish X user interface
  358. robustness:    ?
  359. description:    LINCKS is an object-centred multi-user database system
  360.         developed for complex information system applications where
  361.         editing and browsing of information in the database is of
  362.         paramount importance.  The focus is on sharing of small
  363.         information chunks which combine to make up complex information
  364.         objects used by different users for different purposes. The
  365.         information chunks are semi-structured in that they contain one
  366.         part which is well-structured to facilitate addition of A.I.
  367.         processing within the system, and one part which is
  368.         unstructured and suitable for management by the user.
  369.         Features: shared composite objects, database history, 
  370.         atlernative views, change collision notification (when more
  371.         than one person makes changes to the same composite object)
  372. discussion:    ?
  373. bugs:        lincks-bugs@ida.liu.se.
  374. requires:    Unix, X11R5
  375. ports:        Sun4/SunOS 4.1.[123], Sun4/SunOS 5.2, Sun3, Decstation, 
  376.         RS/6000, Sequent Symmetry, Linux, HP-UX
  377. restrictions:    GNU General Public License
  378. author:        Lin Padgham, Ralph Ronnquist; University of Linkoping, Sweden
  379. contact:    lincks@ida.liu.se
  380. how to get:    ftp pub/lincks/lincks-2.1.tar.gz from ftp.ida.liu.se
  381. updated:    1993/12/20
  382.  
  383. name:        OBST
  384. version:    3-3.5
  385. interfaces:    C++, tcl, schema compiler, graphical object browser
  386. access methods:    extendable hashtable
  387. multiuser:    yes, but writing locks entire tables
  388. transactions:    yes
  389. distributed:    not yet
  390. query language:    C++, tcl, graphical object browser
  391. limits:        4 GB per container, 2^32 containers
  392. robustness:    OBST is quite stable since the start of '93. Releases were
  393.         made to enhance the coding quality rather than to add new
  394.         features. There are somewhere between 50 and 500 users.
  395. description:    The persistent object management system OBST was developed by
  396.         Forschungszentrum Informatik (FZI) as a contribution to the
  397.         STONE project (supported by grant no. ITS8902A7 from the BMFT,
  398.         i.e. the German Ministry for Research).
  399.         OBST was originally designed to serve as the common persistent
  400.         object store for the tools of an software engineering
  401.         environment.
  402.         An essential feature of STONE is that the object oriented
  403.         paradigm is pursued consequently as a key concept. OBST is the
  404.         common persistent object store for all tools within the STONE
  405.         environment.
  406.         OBST provides a rich OO model including multiple inheritance,
  407.         generics, overloading, and privacy.  The schema definition
  408.         language is syntactically similar to C++.  It comes with a
  409.         library of pre-defined classes like Set<Entity>, and
  410.         List<Entity>.  New methods can be incrementally loaded at
  411.         runtime.
  412. announcements:    send 'add <your-address> obst-announce' to obst-listserv@fzi.de
  413. announcements:    send 'add <your-address> obst-forum' to obst-listserv@fzi.de
  414. bugs:        send OBST version, configuration options, C++ version, machine,
  415.         OS, and a description of your problem to <stone@fzi.de>.
  416. requires:    A C++ compiler (G++ 2.3.3-2.5.8 or AT&T 2.1/3.01)
  417. ports:        UNIX: SPARC/SunOS 4.1, Solaris 2, Linux, HP-UX, ...
  418. contact:    obst@fzi.de
  419. how to get:    ftp pub/OBST/? from ftp.fzi.de
  420.     usa:    ftp pub/database/obst/? from ftp.uu.net
  421.     uk:        ftp computing/databases/OBST/? from src.doc.ic.ac.uk
  422. updated:    1994/02/10
  423.  
  424. name:        The Texas Persistent Store
  425. version:    0.1
  426. interfaces:    C++ library
  427. access methods:    ?
  428. multiuser:    not yet
  429. transactions:    not yet
  430. distributed:    not yet
  431. query language:    ?
  432. index size:    ?
  433. limits:        ?
  434. robustness:    beta software
  435. description:    Texas is a simple, portable, high-performance persistent store
  436.         for C++ using "pointer swizzling at page fault time" to
  437.         translate persistent addresses to hardware-supported virtual
  438.         addresses.  Texas is built on top of a normal virtual memory,
  439.         and relies on the underlying virtual memory system for
  440.         caching.  Texas is easy to use, and is implemented as a UNIX
  441.         library.  It is small and can be linked into applications.  It
  442.         requires no special operating system privileges, and
  443.         persistence is orthogonal to type---objects may be allocated on
  444.         either a conventional transient heap, or on the persistent
  445.         heap, as desired.  Texas supports simple checkpointing of heap
  446.         data.
  447. references:    ftp pub/garbage/*.ps from cs.utexas.edu
  448. announcements:    send mail to oops@cs.utexas.edu
  449. discussion:    ?
  450. bugs:        ?
  451. requires:    ?
  452. ports:        SunOS, Ultrix, Sun CC, GNU C++
  453. restrictions:    ?
  454. author:        ?
  455. contact:    oops@cs.utexas.edu
  456. how to get:    ftp pub/garbage/texas/? from cs.utexas.edu
  457. updated:    ?
  458.  
  459. name:           William's Object Oriented Database (Wood)
  460. version:        0.6 
  461. interfaces:     MCL 2.0
  462. access methods: custom
  463. multiuser:      no
  464. transactions:   no
  465. distributed:    no
  466. query language: none. Has BTrees for indexing.
  467. limits:         Will slow down when the database size exceeds
  468.                 256 megabytes. Otherwise, database size limited
  469.                 by disk size (up to Macintosh limit, which is,
  470.                 I believe, 4 gigabytes). Object size limited
  471.                 to 24 megabytes. If you think of a Wood database
  472.                 as a random access FASL file, you'll have the
  473.                 right idea.
  474. robustness:     Until it has a real logging/recovery mechanism,
  475.                 I wouldn't advise using it for mission critical
  476.                 data. Caches pages in memory, so if you crash,
  477.                 you will lose. Has a function to flush the
  478.                 cache to disk, so you can do explicit checkpoints
  479.                 to make it more robust.
  480. description:    Wood is a simple persistent store for MCL 2.0.
  481.                 This is still alpha software. It is incomplete: though you can
  482.                 save/restore all Lisp objects to/from a file, there is no
  483.                 transaction/recovery manager and no garbage collector for the
  484.                 persistent heap. I will not be able to provide much support,
  485.                 but you get source code.
  486. discussion:     info-wood-request@cambridge.apple.com
  487. bugs:           bug-wood@cambridge.apple.com
  488. ports:          Macintosh CommonLisp 2.0
  489. author:         Bill St. Clair <bill@cambridge.apple.com>
  490. how to get:     ftp pub/mcl2/contrib/wood* from cambridge.apple.com
  491. updated:        1993/03/07
  492.  
  493. ---------------------------------------------------------------------------
  494. --------------------------- deductive databases ---------------------------
  495. ---------------------------------------------------------------------------
  496.  
  497. name:        Aditi Deductive Database System
  498. version:    beta release
  499. interfaces:    motif, command line, NU-Prolog
  500. access methods:    Base relations contain variable sized records.  Base relations
  501.         can be indexed with B-trees or multi-level signature files
  502.         (superimposed code words) allowing multi-attribute indexing and
  503.         querying, or they can be stored as unindexed flat files.
  504. multiuser:    yes
  505. transactions:    next release
  506. distributed:    ?
  507. query language:    prolog, graphical (Motif)
  508. limits:        ?
  509. robustness:    ?
  510. description:    Aditi is a multi-user deductive database system.  It supports
  511.         base relations defined by facts (relations in the sense of
  512.         relational databases) and derived relations defined by rules
  513.         that specify how to compute new information from old
  514.         information.  The old information can be from derived relations
  515.         as well as base relations; the rules of derived relations may
  516.         be recursive.  Both base relations and the rules defining
  517.         derived relations are stored on disk and are accessed as
  518.         required during query evaluation.
  519. ports:        SPARC/SunOS, MIPS/IRIX
  520. author:        The development of the Aditi system started in 1988 by
  521.         Professor Kotagiri Ramamohanarao, and many people have been
  522.         involved in its development, in particular Jayen Vaghani, Tim
  523.         Leask, Peter Stuckey, John Shepherd, Zoltan Somogyi, James
  524.         Harland and David Kemp. The support of Kim Marriott, David
  525.         Keegel, and Warwick Harvey is also acknowledged.
  526. contact:    aditi@cs.mu.oz.au
  527. how to get:    send email to aditi@cs.mu.oz.au
  528. updated:    1992/12/17
  529.  
  530. name:        ConceptBase
  531. version:    V3.2
  532. interfaces:    Prolog, C, C++
  533. access methods: TELL and ASK 
  534. multiuser:    yes  
  535. transactions:    primitive (no concurrency)
  536. distributed:    no (but can be extended to do so)
  537. query language: CBQL ("query classes")
  538. limits:        system is rather slow for objects bases larger than 
  539.         10000 objects
  540. robustness:    no 
  541. description:    ConceptBase is a deductive object base manager, i.e., it
  542.         combines object-oriented principles with logical deduction.
  543. references:    see WorldWideWeb entry:
  544.         <http://www.informatik.rwth-aachen.de/I5/CBdoc/cbflyer.html>
  545. bugs:        CB@picasso.informatik.rwth-aachen.de
  546. ports:        SunOS 4.1.3
  547. restrictions:    ConceptBase is distributed by "contact", only. It is not
  548.         public domain.  The source agreeement prohibits commercial
  549.         and military use.
  550. author:        ConceptBase Team 
  551. contact:    <jeusfeld@informatik.rwth-aachen.de>
  552.         ConceptBase Team, c/o Manfred Jeusfeld, RWTH Aachen, 
  553.         Informatik V,
  554.         Ahornstr. 55, 52056 Aachen, Germany
  555. how to get:    ftp /pub/C/? from ftp.informatik.rwth-aachen.de
  556. updated:    1993/07/28
  557.  
  558. name:        CORAL
  559. version:    0.1  (Version 1.0 expected shortly)
  560. interfaces:    Exodus storage mangager, C++
  561. access methods:    Hash-based and B+ tree indices
  562. multiuser:    When used with Exodus
  563. transactions:    When used with Exodus
  564. distributed:    ?
  565. query language:    Prolog-like with SQL-style extensions; C++ interface
  566. limits:        No type checking; only atomic values in persistent relations
  567. robustness:    Research software; used for teaching and in research projects,
  568.         but some bugs remain
  569. description:    The CORAL deductive database/logic programming system was
  570.         developed at the University of Wisconsin-Madison.  The CORAL
  571.         declarative language is based on Horn-clause rules with
  572.         extensions like SQL's group-by and aggregation operators, and
  573.         uses a Prolog-like syntax.  Many evaluation techniques are
  574.         supported, including bottom-up fixpoint evaluation and top-down
  575.         backtracking.  Disk-resident data is supported via an interface
  576.         to the Exodus storage manager; however, CORAL can run without
  577.         Exodus if disk-resident relations are not required.  
  578.         A good interface to C++ is provided.  Relations defined using 
  579.         the declarative language can be manipulated from C++ code, 
  580.         and relations defined using C++ code can be used in declarative 
  581.         rules.  C++ code defining relations can be incrementally loaded.
  582. requires:    AT&T C++ 2.0 or later
  583. ports:        Decstations, Sun 4, Sparc, HP Snakes 
  584. author:        The CORAL group consists of R. Ramakrishnan, P. Seshadri,
  585.         D. Srivastava and S. Sudarshan.  The following people made
  586.         important contributions: T. Arora, P. Bothner, V. Karra 
  587.         and W.G. Roth.  Several other people were also involved:  
  588.         J. Albert, T. Ball, L. Chan, M. Das, S. Goyal, R. Netzer 
  589.         and S. Sterner.
  590. contact:    Raghu Ramakrishnan <raghu@ricotta.cs.wisc.edu>
  591. how to get:    ftp from ftp.cs.wisc.edu
  592. updated:    1993/02/12
  593.  
  594. ---------------------------------------------------------------------------
  595. --------------------------- special purpose -------------------------------
  596. ---------------------------------------------------------------------------
  597.  
  598. name:        GRAS (GRAph-oriented database System)
  599. version:    5.90/9 [[6.0 alpha]]
  600. interfaces:    Navigational programming interfaces for C and Modula-2
  601. access methods:    tries fro database pages, static hashing within pages
  602. multiuser:    Very restricted single writer/multiple reader access
  603.         [[6.0: shared read/write access with locks on a per-session, 
  604.         transaction, or operation basis]]
  605. transactions:    yes; based on backwards logs.  Checkpoints allow roll-back (and
  606.         roll-forward) to a previous state.  
  607. distributed:    no.  [[6.0: Multiclient/multiserver architecture]]
  608. query language:    PROGRES (PROgrammed Graph Rewriting Systems; a language released
  609.         separately)
  610. limits:        2**16 nodes per database and 2**16 databases per multi-database
  611.         [[6.0: 2**32 nodes]]
  612. robustness:    Has been successfully used as the underlying database for
  613.         a number of research prototypes and one commercial product.
  614.         Guarantees recovery from (almost) all application/system crashes
  615. description:    GRAS is a database system which has been designed according
  616.         to the requirements resulting from software engineering
  617.         applications. Software development environments are composed
  618.         of tools which operate on complex, highly structured data.
  619.         In order to model such data in a natural way, we have selected
  620.         attributed graphs as GRAS' underlying data model.
  621.         The current version has programming interfaces for Modula-2 and 
  622.         C and supports:
  623.         - persistent attributed, directed node- and edge-labeled 
  624.           graphs (including long attributes and indexes)
  625.         - temporary/volatile generic sets, binary relations, and lists,
  626.         - graph modification triggers causing further modifications
  627.         - primitives for version control comprising the capability
  628.           for efficiently storing graphs as forward/backward deltas 
  629.         - primitives for declaring graph schemes and for incremental
  630.           evaluation of derived attributes (constraints).
  631.         In additon, there are tools for compressing and displaying 
  632.         graphs.  The GRAS system may be considered to be the core of a
  633.         graph oriented DBMS environment.  The environment is based on a
  634.         VHLL called PROGRESS.  This environment supports: a
  635.         syntax-directed editor for graph schemes, rewrite rules and
  636.         sequences of rules; an incremental consistency checker; an
  637.         incremental compiler&interpreter for PROGRESS; an enhanced
  638.         graph browser
  639. references:    Kiesel, Schuerr, Westfechtel: GRAS, A Graph-Oriented Database
  640.         System for (Software) Engineering Applications. Proc. CASE 93,
  641.         Lee, Reid, Jarzabek (eds.): Proc. CASE '93, 6th Int. Conf. on
  642.         Computer-Aided Software Engineering, IEEE Computer Society
  643.         Press (1993), pp 272-286.  Available by ftp as TR AIB 92-44.
  644.         Schuerr: PROGRES: A VHL-Language Based on Graph Grammars,
  645.         in Proc. 4th Int. Workshop on Graph-Grammars and Their
  646.         Application to Computer Science, LNCS 532, Springer-
  647.         Verlag 1991, pp 641-659.  Available by ftp asTR AIB 90-16.
  648. announcements:    a list is forming; send mail to the contact (below)
  649. bugs:        use the included "send-pr" program to send bug reports
  650. requires:    Modula-2, C
  651. ports:        Sun-4, porting requires Modula-2
  652. restrictions:    GNU General Public License
  653. author:        Lehrstuhl fuer Informatik III, RWTH Aachen, Ahornstr. 55
  654.         D-52074 Aachen, Germany.
  655. contact:    (v5.x & PROGRES) Dr. Andy Sch"urr <andy@i3.informatik.rwth-aachen.de>
  656.         (v6.x) Norbert Kiesel <norbert@i3.informatik.rwth-aachen.de>
  657. how to get:    (v5.x) ftp pub/unix/GRAS from ftp.informatik.rwth-aachen.de
  658.         (PROGRES sun4) ftp pub/unix/PROGRES from ftp.informatik.rwth-aachen.de
  659.         (PROGRES source) send mail to contact
  660.         (references) ftp pub/reports/* from ftp.informatik.rwth-aachen.de
  661.         (v6.x) contact Norbert Kiesel <norbert@i3.informatik.rwth-aachen.de>
  662. updated:    1993/11/01
  663.  
  664. ---------------------------------------------------------------------------
  665. --------------------------- flat files ------------------------------------
  666. ---------------------------------------------------------------------------
  667.  
  668. name:        EDB, the Emacs database
  669. version:    1.17
  670. interfaces:    Emacs, Emacs Lisp
  671. multiuser:    no
  672. transactions:    no
  673. distributed:    no
  674. query language:    Emacs Lisp
  675. limits:        same as for Emacs -- typically 8 or 32 MB
  676. robustness:    fairly high -- currently being used for mission-critical data
  677. description:    EDB provides simple database access in a "user-friendly" Emacs
  678.         environment for flat files.  Extensions for linking records and
  679.         relational-like operations exist, and further extensions are
  680.         easy to make.
  681.         EDB is documented by a 110-page manual, complete with indices
  682. discussion:    edb-list-request@theory.lcs.mit.edu
  683. bugs:        mernst@theory.lcs.mit.edu or edb-list@theory.lcs.mit.edu
  684. requires:    GNU Emacs 18, GNU Emacs 19, or Lucid Emacs
  685. ports:        any computer that runs Emacs -- that is, almost any computer
  686. restrictions:    GNU Public License
  687. author:        Michael Ernst <mernst@theory.lcs.mit.edu>
  688. how to get:    ftp pub/emacs/edb/edb.tar.Z from theory.lcs.mit.edu
  689. updated:    1993/06/16
  690.  
  691. name:        Jinx
  692. version:    2.1
  693. interfaces:    perl, shell
  694. multiuser:    no
  695. transactions:    no
  696. distributed:    no
  697. query language: none
  698. limits:        no limits
  699. robustness:    No bugs have ever been reported
  700. description:    Very easy to use, curses based flat file handler.
  701.         In Perl, so no limits. Allows Join, Project, Sort etc.
  702.         Representation in 2 readable unix files.  A documented
  703.         Perl library makes it easy to add applications.
  704. references:    Online help and a 17 page tutorial.
  705. requires:    Perl, cterm (distributed with jinx)
  706. ports:        any unix system with ordinary perl and curses
  707. restrictions:    Copyleft
  708. author:        Henk Penning, Utrecht University
  709. contact:    Henk Penning <henkp@cs.ruu.nl>
  710. how to get:    ftp pub/PERL/jinx.shar.Z and pub/PERL/cterm.shar.Z 
  711.         from ftp.cs.ruu.nl
  712. updated:    1991/11/01
  713.  
  714. name:        rdb
  715. version:    2.5j
  716. interfaces:    ?
  717. access methods:    ?
  718. multiuser:    ?
  719. transactions:    ?
  720. distributed:    ?
  721. query language:    ?
  722. limits:        ?
  723. robustness:    ?
  724. description:    RDB is mostly a set of Perl scripts working as filters, like
  725.         "row" & "column"; a very nifty table formatting script is in
  726.         "ptbl", which can do long field folding into multiple lines per
  727.         row.
  728. references:    ?
  729. discussion:    ?
  730. bugs:        ?
  731. requires:    perl
  732. ports:        ?
  733. author:        Walt Hobbs <hobbs@rand.org>
  734. how to get:    ftp pub/RDB-hobbs/RDB-2.5j.tar.Z from rand.org
  735. updated:    ?
  736.  
  737. ---------------------------------------------------------------------------
  738. ----------------- dbm and other and raw access methods  -------------------
  739. ---------------------------------------------------------------------------
  740.  
  741. name:        The Berkeley DB code
  742. version:    1.72
  743. interfaces:    ndbm, hsearch
  744. access methods:    hash, b+tree, recno
  745. multiuser:    no 
  746. transactions:    no 
  747. distributed:    no
  748. query language:    none
  749. limits:        can handle large items
  750. robustness:    The db routines are used in some production code so they
  751.         are likely to work reasonably well.
  752. description:    The Berkeley DB Code is a unification of several previous
  753.         interfaces.  It also forms the basis of a unified interface
  754.         to new access methods (b+tree, recno).
  755. references:    "A New Hashing Package for UNIX", Margo Seltzer, Ozan Yigit,
  756.         Proceedings of the Winter USENIX Conference, Dallas, TX, 1991.
  757.         Also available by ftp'ing pub/oz/hash.ps.Z from nexus.yorku.ca.
  758.         "Document Processing in a Relational Database System, Michael
  759.         Stonebraker," Heidi Stettner, Joseph Kalash, Antonin Guttman,
  760.         Nadene Lynn, Memorandum No. UCB/ERL M82/32, May 1982.
  761.         "LIBTP: Portable, Modular Transactions for UNIX," Margo
  762.         Seltzer, Michael Olson, Proceedings 1992 Winter Usenix
  763.         Conference, San Francisco, CA, January 1992.
  764. reported bugs:    does not align data in memory [fixed? --ed]
  765. ports:        SunOS 4.1.2, Ultrix 4.2A, BSD 4.4, and most other Unix
  766. author:        Margo Seltzer, Keith Bostic, Ozan Yigit
  767. contact:    Keith Bostic <bostic@cs.berkeley.edu>
  768. how to get:    ftp ucb/4bsd/db.tar.Z from ftp.cs.berkeley.edu
  769. updated:    1993/10/12
  770.  
  771. name:        Btree Library
  772. version:    first public release
  773. interfaces:    raw C library
  774. access methods:    b-tree
  775. multiuser:    no
  776. transactions:    no
  777. distributed:    no
  778. query language:    none
  779. limits:        values are limited to 4 bytes (long enough for a pointer!)
  780. robustness:    ?
  781. description:    Ths is a library that maintains a simple balanced btree index.
  782.         Nothing more is provided than routines to insert, set, find
  783.         (specific, next, and previous), and delete keys. Each key,
  784.         however, has a spare long value that can be used to contain an
  785.         offset to a data file. A library to handle fixed-length records
  786.         based on these pointers should be trivial. (Can you say
  787.         'dBASEIII'?) Another failing of this library is its total
  788.         inability to cope with having several programs modifying
  789.         indices at the same time. (it *CAN*, but I won't vouch for the
  790.         result) The good solutions to that particular problem are OS
  791.         dependent, unfortunately, and I am not a database guru anyhow.
  792. ports:        Unix
  793. author:        Marcus J. Ranum <mjr@umiacs.UMD.EDU>
  794. how to get:    get btree and bt-rio from comp.sources.misc volume 3
  795. updated:    1988/06/02
  796.  
  797. name:        B+tree Library
  798. version:    first public release
  799. interfaces:    raw C library, dbm-like library
  800. access methods:    b+tree
  801. multiuser:    no
  802. transactions:    no
  803. distributed:    no
  804. query language:    none
  805. limits:        ?
  806. robustness:    ?
  807. description:    This is the source code for a variable-length key variable page
  808.         size b+tree library. Also included is source for a variety of
  809.         test programs, a semi-useable record manager, and a
  810.         dbm-lookalike library built on top of the record manager and
  811.         b+tree. (dbm(3) will blow it away performance-wise, of
  812.         course).
  813. ports:        Pyramid, Sun, BSD4.3, Ultrix.  Does not work on Xenix
  814. author:        Marcus J. Ranum <mjr@umiacs.UMD.EDU>
  815. how to get:    get b+tree_mgr from comp.sources.misc volume 10
  816. updated:    1988/06/02
  817.  
  818. name:        dbc3
  819. version:    1.0
  820. interfaces:    raw C library
  821. access methods:    ?
  822. multiuser:    no
  823. transactions:    ?
  824. distributed:    no
  825. query language:    none
  826. limits:        ?
  827. robustness:    ?
  828. description:    Dbclib provides a basic C interface to the database files
  829.         used by dBase III.  It provides funtions to both read and 
  830.         write them.  The author is German and so all the comments are 
  831.         in German.  It's very small (95k).  [I'm not sure I have 
  832.         the name correct --ed]
  833. ports:        Unix, MS-DOS
  834. author:        D.Schanz
  835. how to get:    uucp (host gold, login nuucp, no password, phone 08106-34593) 
  836.         /home/public/unxhigh/unix1/dbclib.tgz; or
  837.         ftp pub/pc/dos/programming/c/dbclib.tar.gz from ftp.uni-kl.de
  838. updated:    1988/09/13
  839.  
  840. name:        dbz
  841. version:    "20 Feb 1993 Performance Release of C News"
  842. interfaces:    dbm-like, command-line access
  843. access methods:    hash
  844. multiuser:    no
  845. transactions:    no
  846. distributed:    no
  847. query language:    none
  848. limits:        lines are limited to 1024 bytes unless the -l option is used
  849. robustness:    very robust within its domain
  850. description:    A dbm-like library maintained for use with C-news.
  851. ports:        everything that runs C-news (lots)
  852. author:        Jon Zeeff <zeeff@b-tech.ann-arbor.mi.us>, David Butler, Mark
  853.         Moraes, Henry Spencer.  Hashing function by Peter Honeyman.
  854. contact:    Henry Spencer <henry@zoo.toronto.edu>
  855. how to get:    included in the C-news distribution as ./dbz
  856. updated:    1992/02/11
  857.  
  858. name:        gdbm
  859. version:    1.7.1
  860. interfaces:    dbm, ndbm, gdbm
  861. access methods:    hash
  862. multiuser:    no, but does lock the entire file
  863. transactions:    no
  864. distributed:    no
  865. query language:    none
  866. limits:        can handle large items
  867. robustness:    [should be good --ed]
  868. description:    An ndbm work-alike from the Free Software Foundation
  869. bugs:        gnu.utils.bug
  870. author:        Philip A. Nelson <phil@wwu.edu>
  871. how to get:    ftp gdbm-*.tar.gz from any gnu archive
  872. updated:    1993/11/16
  873.  
  874. name:        IDBM (ISAM Database Manager)
  875. version:    0.2.0
  876. interfaces:    C library, curses query facility
  877. access methods:    ISAM
  878. multiuser:    no
  879. transactions:    no ?
  880. distributed:    no
  881. query language:    none
  882. index size:    ?
  883. limits:        ?
  884. robustness:    beta release
  885. description:    IDBM is a fairly complete ISAM database system.  It includes
  886.         a database library, a schema compiler, a database consistaency
  887.         checker,  import and export routines, and curses programs to
  888.         modify the database schema and the data in the database.
  889. references:    ?
  890. announcements:    ?
  891. discussion:    ?
  892. bugs:        ?
  893. requires:    ?
  894. ports:        Xenix, SysV, HP-UX, AIX, Amiga, SunOS, BSD, and Ultrix
  895. restrictions:    May not be used for commercial purposes.
  896. author:        John F Haugh II <jfh@rpp386.cactus.org>
  897. contact:    ?
  898. how to get:    ftp pub/idbm/idbm-0.2.x/* from ftp.nevada.edu
  899. updated:    1992/03/31
  900.  
  901. name:        sdbm
  902. version:    ?
  903. interfaces:    ndbm
  904. access methods:    hash
  905. multiuser:    no
  906. transactions:    no
  907. distributed:    no
  908. query language:    none
  909. limits:        ?
  910. robustness:    [I know of no problems --ed]
  911. description:    ndbm work-alike hashed database library based
  912.         on Per-Aake Larson's Dynamic Hashing algorithms.
  913. author:        Ozan S. Yigit <oz@nexus.yorku.ca>
  914. how to get:    included in the X11R5 distribution as contrib/util/sdbm
  915. updated:    1990/03/01
  916.  
  917. name:        tdbm
  918. version:    1.1
  919. interfaces:    dbm-like
  920. access methods:    hashing
  921. multiuser:    In theory, but the required threads package is not currently
  922.                 distributed.
  923. transactions:    yes
  924. distributed:    yes
  925. query language:    none
  926. limits:         Some minor ones.
  927. robustness:    Probably pretty reliable, but no hard data available.
  928. description:    Tdbm is a transaction processing database with a dbm-like
  929.         interface.  It provides nested atomic transactions, volatile
  930.         and persistent databases, and support for very large objects
  931.         and distributed operation.
  932. references:    A paper appearing in the Summer '92 USENIX proceedings
  933.         describes the design and implementation of tdbm and examines
  934.         its performance.
  935. discussion:    Contact the author.
  936. bugs:        Contact the author.
  937. author:        Barry Brachman <brachman@cs.ubc.ca>
  938. requires:       Nothing special.
  939. ports:        Sparc, MIPS, AIX.  Thought to be quite portable.
  940. restrictions:   Copyrighted with liberal use policy.
  941. how to get:    ftp pub/local/src/tdbm.tar.Z from cs.ubc.ca [137.82.8.5]
  942. updated:    1992/05/13
  943.  
  944. name:        Wb
  945. version:    1a2
  946. interfaces:    scheme library
  947. access method:    b-tree
  948. multiuser:    no
  949. transactions:    no
  950. distributed:    no
  951. query language:    none
  952. limits:        keys and data must be less that 256 bytes.  Total database
  953.         must be < blocksize*2^32.
  954. robustness:    unknown.  New release by a good programmer.
  955. description:    WB is a disk based, sorted associative array C library.  These
  956.         associative arrays consist of variable length (less that 256
  957.         bytes) keys and values.  WB comes with an interface to the
  958.         Scheme implementation SCM.
  959. author:        Aubrey Jaffer <jaffer@martigny.ai.mit.edu>
  960. requires:    SCM and SLIB (also available from altdorf.ai.mit.edu)
  961. ports:        ?
  962. how to get:    ftp archive/scm/wb1a2.tar.z from altdorf.ai.mit.edu
  963. updated:    1993/11/05
  964.  
  965. ---------------------------------------------------------------------------
  966. --------------------------- full text -------------------------------------
  967. ---------------------------------------------------------------------------
  968.  
  969. name:        Liam Quin's text retrieval package (lq-text)
  970. version:    1.13
  971. interfaces:    command line, curses
  972. access methods:    hash (dbm) plus clustered linked list
  973. multiuser:    read only
  974. distributed:    no, can be used over nfs if the systems are similar
  975. query language:    very limited command line
  976. limits:        30-bit max document size, 31-bit distinct words in vocabulary,
  977.         up to 2^24 documents (possibly more but I don't have enough
  978.         disk to test anything like that!)
  979. index size:    >30%, <100% of input text
  980. robustness:    The README says that there are bugs.
  981. description:    lq-text is a text retrieval package.
  982.         That means you can tell it about lots of files, and later you
  983.         can ask it questions about them.  The questions have to be:
  984.         "which files contain this word?" or "which files contain this
  985.         phrase?", but this information turns out to be rather useful.
  986.         Lqtext has been designed to be reasonably fast.  It uses an
  987.         inverted index, which is simply a kind of database.  This tends
  988.         to be smaller than the size of the data, but more than half as
  989.         large.  You still need to keep the original data.
  990.         Lqtext uses dbm (berkeley db or sdbm) to store its indexes.
  991. discussion:    lq-text-beta-request@sq.com
  992. bugs:        lq-text-beta@sq.com
  993. ports:        most version of unix (except SCO)
  994. restrictions:    permission required for commercial use.
  995. author:        Liam R. E. Quin <lee@sq.com>
  996. how to get:    ftp pub/lq-text*.tar.Z from relay.cs.toronto.edu
  997. updated:    1993/12/10
  998.  
  999. name:        qt (Query Text)
  1000. version:    0.1
  1001. interfaces:    unix command line
  1002. access methods:    ?
  1003. multiuser:    no
  1004. distributed:    no
  1005. query language:    unix command line
  1006. index size:    ?
  1007. limits:        ?
  1008. robustness:    ?
  1009. description:    Qt creates, maintains, and queries a full text database. The
  1010.         database file system is organized as an inverted index. The
  1011.         program is written as a single script, in Bourne Shell, and
  1012.         permits simple natural language queries.  
  1013.         [qt appears to be easier to use than lq-text and wais --ed]
  1014. bugs:        author
  1015. ports:        Unix, SysV.4, AIX, OSF/1, etc.
  1016. author:        John Conover <john@johncon.com>
  1017. how to get:    comp.sources.unix volume 27
  1018. updated:    1993/10/18
  1019.  
  1020. name:        SMART
  1021. version:    11.0
  1022. interfaces:    terminal, X (slightly oder version), and several 
  1023.         under development including Z39.50
  1024. access methods:    inverted file search or sequential search
  1025. multiuser:    yes, but last writer wins when there are update conflicts
  1026. distributed:    In-house version, to be made public in fall
  1027. query language:    Natural language
  1028. index size:    approx 40% of original text.
  1029. limits:        Can only handle roughly 4 Gbytes of text in 
  1030.         non-distributed version.
  1031. robustness:    Research tool; parts have been well-tested but others not.
  1032. description:    SMART is an implementation of the vector-space model of
  1033.         information retrieval proposed by Salton back in the 60's.  The
  1034.         primary purpose of SMART is to provide a framework in which to
  1035.         conduct information retrieval research.  Standard versions of
  1036.         indexing, retrieval, and evaluation are provided.
  1037.         The system is designed to be used for small to medium scale
  1038.         collections, and offers reasonable speed and support for these
  1039.         actual applications.
  1040.         SMART analyses the collection of information and builds
  1041.         indexes.  It can then be used to build natural-language based
  1042.         information retrieval software.  It uses feedback from the
  1043.         user to tighten its search.
  1044. references:    Z39.50 URL: <http://ds.internic.net/z3950/z3950.html>
  1045. restrictions:    Research use only.
  1046. discussion:    smart-people-request@cs.cornell.edu
  1047. ports:        Unix (works under Linux, does not work under Ultrix, ?)
  1048. contact:    <chrisb@cs.cornell.edu>
  1049. how to get:    ftp pub/smart/* from ftp.cs.cornell.edu
  1050. updated:    1992/07/21
  1051.  
  1052. name:        WAIS (Wide Area Information Server)
  1053. version:    8 b5.1
  1054. interfaces:    the wais protocol (Z39.50)
  1055. access methods:    inverted string index
  1056. multiuser:    read only
  1057. distributed:    client/server
  1058. query language:    natural language, boolean, Relevance Feedback
  1059. index size:    roughtly = data size
  1060. limits:        "none"
  1061. robustness:    fairly high
  1062. description:    There are three main components: WAISINDEX, WAISSERVER, and
  1063.         WAISSEARCH.
  1064.         WAISINDEX creates an inverted file index.  WAISINDEX includes
  1065.         filters for a number of common file formats.
  1066.         WAISSERVER listens for Z39.50 packets and tries to answer
  1067.         them.
  1068.         WAISSEARCH is the user agent that talks to WAISSERVERs.  There
  1069.         are several front ends: shell, X, and emacs.
  1070. announcements:    wais-interest-request@think.com
  1071. discussion:    wais-discussion-request@think.com
  1072. ports:        vax, sun-3, sun-4, NeXT, sysV
  1073. restriction:    commercial version exists, contact info@wais.com
  1074. author:        Harry Morris <Morris@wais.com>, Brewster Kahle 
  1075.         <Brewster@wais.com>, Jonny Goldman <Jonathan@Think.COM>
  1076. how to get:    ftp pub/freeware/unix-src/* from wais.com
  1077. updated:    1992/11/16
  1078.  
  1079. ---------------------------------------------------------------------------
  1080. --------------------------- interfaces ------------------------------------
  1081. ---------------------------------------------------------------------------
  1082.  
  1083. name:        CB++
  1084. version:    0.1
  1085. interface from: C/C++
  1086. interface to:    SunOS/Oracle (DOS+Windows/Oracle,Gupta, OS/2 Sybase)
  1087. description:    CB++ provides a plain C/C++ interface (not embedded) for SQL
  1088.         database server access.     It was written in 1989 as a basis for
  1089.         storing C++ objects in a relational database.    It is very
  1090.         simple to use and makes applications portable among different
  1091.         SQL databases.    The library itself is relatively easy to port
  1092.         as the database vendor specific code is separated into a single
  1093.         C++ class which makes up only a limited part of the library.
  1094.         The author supports the current SunOS/Oracle version and
  1095.         server ports to other UNIX databases (DOS-, Windows-, OS/2-stuff
  1096.         is provided as it is and no longer supported)
  1097. requires:    C++
  1098. ports:        Oracle 6 for SunOS 4.1.3,
  1099.         Gupta SQL Server for DOS/MS-Windows, OS/2 SQL Server
  1100. author:        Bernhard Strassl <bernhard@ani.univie.ac.at>
  1101. how to get:    ftp contrib/CB++.0.1.tar.Z from ftp.x.org
  1102. updated:    1993/10/05
  1103.  
  1104. name:        ctreeperl
  1105. version:    ?
  1106. interface from:    perl
  1107. interface to:    FairCom Ctree 
  1108. description:    A perl interface for FairCom Ctree file indexing.
  1109. requires:    Ctree
  1110. author:        John Conover <john@johncon.com>
  1111. how to get:    ftp pub/perl/db/ctreeperl from ftp.demon.co.uk
  1112. updated:    1994/04/07
  1113.  
  1114. name:        DSQL
  1115. version:    3.0
  1116. interface from:    Unix, Macintosh, MS-DOS, MS-Windows, and Macintosh Hypercard
  1117. interface to:    Unix/Informix, VMS/Oracle
  1118. description:    DSQL is a simple client/server protocol to support remote
  1119.         access of SQL databases.  DSQL was designed in response to a
  1120.         perceived need at Genentech to provide graphical front-ends on
  1121.         Macintosh computers to Informix relational databases running on
  1122.         Unix servers.  DSQL version 3 is distributed with 2 server
  1123.         implementations and four client library implementations.  The
  1124.         API for the client libraries has been standardized, and the
  1125.         client code is divided into portable and architecture-specific
  1126.         portions.
  1127. requires:    ?
  1128. ports:        Mac, PC, Unix
  1129. author:        The Genentech Scientific Computing Technology Development 
  1130.         group.  Original authors: David Mischel, Terry Oberzeir, 
  1131.         Scooter Morris <scooter@tinman.gene.com>, Kathryn Woods.  
  1132.         Current team: Jim Fitzgerald, David Mischel, Scooter Morris, 
  1133.         Terry Oberzier, and Dan Lamb (VMS/Oracle).
  1134. contact:    ?
  1135. how to get:    ftp pub/dsql.3.tar.Z from cgl.ucsf.edu
  1136. updated:    1993/06/25
  1137.  
  1138. name:        Ingperl 
  1139. version:    2.0
  1140. interface from:    perl
  1141. interface to:    Ingres
  1142. descritpion:    Ingperl is a set of user subroutines to enable Perl programs to
  1143.         access Ingres databases.  Ingperl used to be called Sqlperl.
  1144. requires:    Perl 3.027 or higher, ?
  1145. discussion:    perldb-interest-REQUEST@vix.com
  1146. author:        Ted Lemon <mellon@ncd.com>
  1147. how to get:    ftp pub/perl/db/sqlperl/? from ftp.demon.co.uk
  1148. updated:    1994/04/11
  1149.  
  1150. name:        Isqlperl
  1151. version:    1.1
  1152. interface from:    perl
  1153. interface to:    Informix
  1154. limits:        Maximum concurrently open cursors configured at build time.
  1155. descritpion:    Isqlperl is a set of user subroutines to enable Perl programs to
  1156.         access Informix databases.
  1157. requires:    Perl 4.035 or higher, Informix ESQL/C (Online, SE, or Turbo)
  1158. discussion:    perldb-interest-REQUEST@vix.com
  1159. restrictions:    GNU Public License
  1160. author:        Bill Hails <bill@tardis.co.uk>
  1161. how to get:    ftp pub/perl/db/isqlperl/isqlperl-1.1.shar.Z 
  1162.         from ftp.demon.co.uk
  1163. updated:    1993/10/02
  1164.  
  1165. name:        Isqltcl ?
  1166. version:    ?
  1167. interface from:    tcl
  1168. interface to:    Informix
  1169. description:    Isqltcl is an extension to Tool Command Language (Tcl) that
  1170.         provides access to an Informix database server.  Isqltcl adds
  1171.         additional Tcl commands that login to an Informix Server, pass
  1172.         SQL code, read results, etc.
  1173. requires:    ?
  1174. discussion:    comp.lang.tcl
  1175. author:        Srinivas Kumar <skumar@netcom.com>
  1176. how to get:    ftp tcl/extensions/isqltcl.tar.Z from harbor.ecn.purdue.edu
  1177. updated:    1993/09/15
  1178.  
  1179. name:        Interperl
  1180. version:    ?
  1181. interface from:    perl
  1182. interface to:    Interbase
  1183. descritpion:    Interperl is a set of user subroutines to enable Perl programs 
  1184.         to access Interbase databases.
  1185. requires:    Perl 3.027 or higher, ?
  1186. discussion:    perldb-interest-REQUEST@vix.com
  1187. author:        Buzz Moschetti <buzz@bear.com>
  1188. how to get:    ftp pub/perl/db/interperl/? from ftp.demon.co.uk
  1189. updated:    ?
  1190.  
  1191. name:        Onyx
  1192. version:    2.28
  1193. interface from: Onyx 4gl, (emacs and smalltalk planned)
  1194. interface to:    Ingres89, Informix, GAWK, Shql, Yard (Postgres, OBST planned)
  1195.         The informix port is slow and no longer being extended
  1196.         because the author feels their support is inadiquat.e
  1197. interfaces:    Onyx uses a OO-Parser to access different engines
  1198.         The transaction manager can be accessed by any aplication
  1199.         which is able to use pipes or TCP/sockets.
  1200. multiuser:    Depends on the used engine.
  1201. transactions:    Yes, but no rollback, all transactions are atomic as
  1202.         a block, replication of transactions is planned for
  1203.         one of the next releases.
  1204. distributed:    Yes its possible to connect to any mentioned database
  1205.         anywhere in the net.  Replication is planned.
  1206. query language: SQL + Onyx 4gl (based on Model-View-Controller idea)
  1207. limits:        Current version uses memory to store selected data.
  1208. robustness:    Onyx is experimental, but useable for clients.    The author is
  1209.         supporting himself by writing applications written in Onyx 4GL.
  1210. description:    Onyx is a 4gl based on the idea of model view controller. Onyx
  1211.         4gl connects to a transaction manager based on a OO-Parser
  1212.         generator via a socket.     While the design goal of the protocol
  1213.         was to keep it as simple as posible, its a good starting point
  1214.         of writing vendor independent database applications.
  1215. status:        experimental; actively developed and supported.
  1216. announcements:    comp.os.linux.announce
  1217. bugs:        Michael Koehne <kraehe@bakunin.north.de>
  1218. requires:    BSD like system, GNU C++, a database engine (minimum GNU-AWK)
  1219. ports:        Tested on Linux and SunOs.
  1220. restrictions:    GNU Public Licence
  1221. author:        Michael Koehne <kraehe@bakunin.north.de>
  1222. how to get:    ftp incoming/onyx/? from ftp.germany.eu.net (every versions)
  1223.         ftp pub/comp/i386/Linux/Local.EUnet/Applications/Database 
  1224.         from ftp.germany.eu.net (stable versions)
  1225. updated:    1994/03/19
  1226.  
  1227. name:        Oraperl
  1228. version:    ?
  1229. interface from:    perl
  1230. interface to:    Oracle
  1231. descritpion:    Oraperl is a set of user subroutines to enable Perl programs to
  1232.         access Oracle databases.
  1233. requires:    Perl 3.027 or higher, Oracle Pro*C
  1234. discussion:    perldb-interest-REQUEST@vix.com
  1235. author:        Kevin Stock 
  1236. how to get:    ftp pub/perl/db/oraperl/? from ftp.demon.co.uk
  1237. updated:    ?
  1238.  
  1239. name:        Oratcl
  1240. version:    2.11
  1241. interface from:    TCL
  1242. interface to:    Oracle
  1243. description:    Oratcl is an extension to Tool Command Language (Tcl) that
  1244.         provides access to a Oracle Database server.  Oratcl adds
  1245.         additional Tcl commands that login to an Oracle Server, pass
  1246.         SQL code, read results, etc.  Oratcl was inspired by similar
  1247.         tools written for Perl (sybperl, oraperl) but was written from
  1248.         scratch instead of borrowing on the work of either Perl
  1249.         extension.
  1250. requires:    Tcl 6.7, Tk 3.2, Oracle OCI libraries 1.5, 
  1251.         Oracle SQL Server Version 6 or Version 7
  1252. discussion:    comp.lang.tcl
  1253. author:        Tom Poindexter <tpoindex@nyx.cs.du.edu>
  1254. how to get:    ftp pub/tcl/extensions/oratcl-* from harbor.ecn.purdue.edu
  1255. updated:    1994/04/13
  1256.  
  1257. name:        pgperl
  1258. version:    ?
  1259. interface from:    perl
  1260. interface to:    Postgres
  1261. descritpion:    pgperl is a set of user subroutines to enable Perl programs to
  1262.         access Postgres databases.
  1263. requires:    Perl 3.027 or higher, ?
  1264. discussion:    perldb-interest-REQUEST@vix.com
  1265. author:        Igor Metz <metz@iam.unibe.ch>
  1266. how to get:    ftp pub/perl/db/pgperl/? from ftp.demon.co.uk
  1267. updated:    ?
  1268.  
  1269. name:        SIOD (Scheme In One Defun/Day)
  1270. version:    3.0
  1271. interface from: C, C++, Scheme
  1272. interface to:    Oracle, Digital RDB, flat ascii, flat binary.
  1273. access methods: flat files contain symbolic expression such as hash tables.
  1274. multiuser:    yes with commercial DB, no with flat files.
  1275. transactions:    yes with commercial DB, no with flat files.
  1276. distributed:    yes with commercial DB, no with flat files.
  1277. query language: SQL, any SCHEME program.
  1278. limits:        None.
  1279. robustness:    ?
  1280. description:    This is a scheme interpreter with built-in procedures using
  1281.         the Oracle Call Interface (OCI) and DIGITAL RDB SQL Services.
  1282.         You can use it merely as a flexible database loader/unloader
  1283.         with fast binary flat-file data save/restore. Or you can
  1284.         use it to apply the classic "Symbolic Manipulation" or
  1285.         "Artificial Intelligence" techniques on your data sets.
  1286.         The main-program can be oriented towards batch, character-cell
  1287.         terminal, or Window/GUI.
  1288. references:    "Structure and Interpretation of Computer Programs" MIT Press.
  1289. announcements:    comp.lang.scheme, comp.databases.rdb, comp.databases.oracle
  1290. bugs:        Contact the author.
  1291. requires:    C compiler, your favorite commercial DB.
  1292. ports:        VMS, WINDOWS NT, UNIX, OS/2, MACINTOSH. 
  1293. author:        George Carrette <gjc@mitech.com>
  1294. how to get:    ftp pub/gjc/siod* from ftp.std.com.
  1295. updated:    1994/05/01
  1296.  
  1297. name:        Sybperl
  1298. version:    1.010
  1299. interface from:    perl
  1300. interface to:    Sybase
  1301. descritpion:    Sybperl is a set of user subroutines to enable Perl programs to
  1302.         access Sybase databases.
  1303. requires:    Perl 3.027 or higher, ?
  1304. discussion:    perldb-interest-REQUEST@vix.com
  1305. author:        Michael Peppler <mpeppler@itf.ch>
  1306. how to get:    ftp pub/perl/db/sybperl/sybperl-1.009.* from ftp.demon.co.uk
  1307. updated:    1994/03/10
  1308.  
  1309. name:        Sybtcl
  1310. version:    2.11
  1311. interface from:    TCL
  1312. interface to:    Sybase
  1313. description:    Sybtcl is an extension to Tool Command Language (Tcl) that
  1314.         provides access to a Sybase Database server.  Sybtcl adds
  1315.         additional Tcl commands that login to a SQL Server, pass SQL
  1316.         code, read results, etc.  Sybtcl was inspired by similar tools
  1317.         written for Perl (sybperl, oraperl) but was written from
  1318.         scratch instead of borrowing on the work of either Perl
  1319.         extension.
  1320. requires:    Sybase Open Client (DB-Library), Sybase SQL Server
  1321. discussion:    comp.lang.tcl
  1322. author:        Tom Poindexter <tpoindex@nyx.cs.du.edu>
  1323. how to get:    ftp tcl/extensions/sybtcl-* from harbor.ecn.purdue.edu
  1324. updated:    1994/04/13
  1325.  
  1326. name:        tclgdbm
  1327. version:    1.0
  1328. interface from:    TCL
  1329. interface to:    gdbm
  1330. description:    none provided
  1331. discussion:    comp.lang.tcl
  1332. author:        Tuan Doan <tdoan@bnr.ca>
  1333. how to get:    ftp pub/tcl/extensions/tclgdbm1.0* from harbor.ecn.purdue.edu
  1334. updated:    1994/02/08
  1335.  
  1336. name:        Uniperl
  1337. version:    ?
  1338. interface from:    perl
  1339. interface to:    Unify 5.0
  1340. descritpion:    Uniperl is a set of user subroutines to enable Perl programs to
  1341.         access Unify databases.
  1342. requires:    Perl 3.027 or higher, ?
  1343. discussion:    perldb-interest-REQUEST@vix.com
  1344. author:        Rick Wargo <rickers@coe.drexel.edu>
  1345. how to get:    ftp pub/perl/db/uniperl/? from ftp.demon.co.uk
  1346. updated:    ?
  1347.  
  1348. ---------------------------------------------------------------------------
  1349. --------------------------- other -----------------------------------------
  1350. ---------------------------------------------------------------------------
  1351.  
  1352. name:        _lex & yacc_ by Levine, Mason & Brown published by O'Reilly
  1353. version:    ?
  1354. parts:        grammar
  1355. description:    In _lex & yacc_, by Levine, Mason & Brown an SQL parser
  1356.         is included as an example grammar
  1357. author:        Levine, Mason & Brown
  1358. how to get:    buy the book, or ftp published/oreilly/nutshell/lexyacc/? 
  1359.         from ftp.uu.net.
  1360. updated:    ?
  1361.  
  1362. name:        examples from: "Information Retrieval, Data Structures 
  1363.         & Algorithms," William B. Frakes, Ricardo Baeza-Yates, 
  1364.         Editors, Prentice Hall, Englewood Cliffs, 
  1365.         New Jersey 07632, 1992, ISBN 0-13-463837-9.
  1366. version:    ?
  1367. descriptions:    example code from the book "Information Retrieval, Data 
  1368.         Structures & Algorithms"
  1369. how to get:    ftp pub/reuse/ircode.tar.Z from ftp.vt.edu
  1370. author:        [resumably William B. Frakes, Ricardo Baeza-Yates]
  1371. updated:    ?
  1372.  
  1373. name:        "A Guide to the SQL standard"
  1374. version:    ?
  1375. parts:        BNF SQL grammer
  1376. description:    A BNF grammer for SQL is included in the book.
  1377. how to get:    buy the book: "A Guide to the SQL standard" by Hugh Darwen
  1378.         and C.J. Date.
  1379. updated:    ?
  1380.  
  1381. name:        MultiCal
  1382. version:    1.0
  1383. interfaces:    ?
  1384. access methods:    ?
  1385. multiuser:    no
  1386. transactions:    no
  1387. distributed:    no
  1388. query language:    enhanced SQL2 
  1389. index size:    ?
  1390. limits:        ?
  1391. description:    MultiCal is both a novel approach to supporting multiple
  1392.         calendars and internationalization of time constants and a
  1393.         query processor prototype that demonstrates this approach.
  1394.         MultiCal consists of about 48K source lines of C code; the
  1395.         query processor prototype consists of about 63K source lines of
  1396.         code.  The documentation consists of fifteen documents,
  1397.         comprising some 300 pages of material.
  1398.         MultiCal consists of an approach to providing limited
  1399.         extensibility for support of multiple calendars and languages
  1400.         for temporal support within a database management system
  1401.         (DBMS). We have augmented the Structured Query Language (SQL),
  1402.         specifically, SQL2, with time values, i.e., temporal
  1403.         constants.  Our approach is notable in that we allow many
  1404.         different calendars to be used in the database management
  1405.         system, and we incorporate only calendar-independent constructs
  1406.         into the language. We introduce three new temporal data types.
  1407.         New language features are defined for temporal built-in
  1408.         functions, special time values, arithmetic expressions
  1409.         involving time, temporal predicates, and aggregate functions
  1410.         over time. Ten languages are supported.
  1411.         To illustrate how an existing DBMS could be augmented to
  1412.         support multiple calendars, we provide a prototype DBMS that
  1413.         supports the proposed extensions. This prototype consists of
  1414.         query analysis and execution components. It eschews traditional
  1415.         functionality such as concurrency control and disk access
  1416.         methods, as these aspects are not relevant to timestamp
  1417.         management.
  1418. ports:        Sun4
  1419. contact:    <multical@cs.arizona.edu> or Rick Snodgrass <rts@CS.Arizona.EDU>
  1420. how to get:    ftp tsql/multical/* from ftp.cs.arizona.edu
  1421. updated:    1993/10/30
  1422.  
  1423. name:        dbf (xbase manipulation package)
  1424. version:    ?
  1425. interfaces:    command line
  1426. access methods:    ?
  1427. multiuser:    no
  1428. transactions:    no
  1429. distributed:    no
  1430. query language:    none
  1431. limits:        ?
  1432. robustness:    ?
  1433. description:    DBF is a set of tools and library routines to manipulate xbase
  1434.         files.  The tools allow xbase files to be created and
  1435.         manipulated from the command line.
  1436. author:        Brad Eacker <beacker@sgi.com>
  1437. how to get:    comp.sources.misc volume 40
  1438. updated:    1993/11/01
  1439.  
  1440.  
  1441.